草庐IT

Java float 表示为十六进制数

全部标签

c++ - 将 float 转换为 32 位十六进制 C++

谁能告诉我是否有将float转换为十六进制格式的代码?例如:floatnum=70.482和十六进制函数应返回428CF6C9。如果之前有任何代码已经完成,请链接我。干杯。 最佳答案 你可以自己简单地写一下:floatx;constunsignedchar*pf=reinterpret_cast(&x);for(size_ti=0;i!=sizeof(float);++i){//ithbyteispf[i]//e.g.printf("0x02X",pf[i]);}事实上,您可以这样做以获得任何(标准布局*)变量的二进制表示。*)谢谢

c# - 如何将二进制文件转换为另一种二进制表示形式,如图像

我想获取一个二进制文件(exe、msi、dll等)并能够实际“查看”二进制代码或我想要的任何基数(无论是十六进制)。我想最简单的方法就是将代码输出到一个txt文件中,这样我就可以检查它。最好和最简单的方法是什么?基本上,我希望将二进制代码转换为我的项目的图片。同样,如果我可以获取一些二进制代码,然后将其转换为二进制文件,那就太好了。您的方法是什么,我列出了C、C++和C#,因为这些似乎是最快的编程语言,我认为这可能需要一些时间。我想我对C语言的答案更感兴趣,但我主要是在寻找其背后的一些逻辑。 最佳答案 这是一种将字节打包成图像的方法

C++将字符串转换为十六进制

这个问题在这里已经有了答案:关闭10年前。PossibleDuplicate:C++converthexstringtosignedinteger我已经在谷歌上搜索过但没有找到任何帮助。所以这是我的问题:我有已经包含十六进制代码的字符串,例如:strings1="5f0066"我想将此字符串转换为十六进制。我需要将字符串与我在二进制文件中读取的十六进制代码进行比较。(只需要知道如何转换字符串的基本概念)5f致以最诚挚的问候和感谢。编辑:以unsignedchar格式获取二进制文件信息。所以它的0x5f...想要相同格式的字符串

c++ - 如何将标准 IP 地址格式字符串转换为十六进制和长?

有谁知道如何从标准IP地址格式字符串(“xxx.xxx.xxx.xxx”)中获取十进制或十六进制的IP地址?我尝试使用inet_addr()函数但没有得到正确的结果。我在“84.52.184.224”上测试过函数返回的3770168404不正确(正确的结果是1412741344)。谢谢! 最佳答案 您刚刚得到的字节与您预期的相反-它们在networkbyteorder中3770168404=0xE0B83454networkbyteorder||\/\/\/\//\/\/\/\||1412741344=0x5434B8E0machi

c++ - 在 C++ 中将指针表示为字符串的最佳可移植方式是什么?

我需要将指针表示为用户的字符串。有时这些值可能会保存到一个文件并传输到具有不同体系结构的计算机(32位与64位是当前的主要问题)并从文本文件加载以进行比较-我只会比较加载的值彼此,但我仍然更喜欢比较数字而不是字符串。我目前正在使用:SomeClass*p;...printf("%ld",(uintptr_t)p);但我想知道这是否是可移植的(虽然Windows和Linux仅在现阶段很重要),以及一旦出现128位系统这是否会中断?编辑:除非我决定使用uint64_t,并确定64位是屋顶,否则无法完成此操作,因为某些64位指针可能在32位整数范围之外。因此,我决定比较字符串会更安全,即使它

c++ - 以十进制数的二进制格式计算 1 的个数

我想找出一个大十进制数(十进制数可以大到1000000)的二进制形式的1的个数。我试过这段代码:while(sum>0){if(sum%2!=0){c++;//countingnumberofones}sum=sum/2;}我想要一个更快的算法,因为它需要很长时间才能输入大量小数。请建议我一个有效的算法。 最佳答案 您正在寻找的是“popcount”,它在后来的x64CPU上作为单个CPU指令实现,速度不会被打败:#ifdef__APPLE__#defineNAME(name)_##name#else#defineNAME(name

c++ - 将大的十六进制数转换为十进制形式(基数为 10 的形式)的算法

我有一个字节数组和该数组的长度。目标是输出包含以10进制表示的数字的字符串。我的数组是小端。这意味着第一个(arr[0])字节是最低有效字节。这是一个例子:#includeusingnamespacestd;typedefunsignedcharByte;intmain(){intlen=5;Byte*arr=newByte[5];inti=0;arr[i++]=0x12;arr[i++]=0x34;arr[i++]=0x56;arr[i++]=0x78;arr[i++]=0x9A;cout数组由[0x12,0x34,0x56,0x78,0x9A]组成。我要实现的函数hexToDec应

python - 解包十六进制编码的 float

我正在尝试将以下Python代码翻译成C++:importstructimportbinasciiinputstring=("0000003F""0000803F""AD10753F""00000080")num_vals=4foriinrange(num_vals):rawhex=inputstring[i*8:(i*8)+8]#因此它读取32位的十六进制编码字符串,使用unhexlify方法将其转换为字节数组,并将其解释为小端浮点值。以下几乎可以工作,但代码有点糟糕(最后一个00000080解析不正确):#include#includeintmain(){//Thehex-enco

C++ 将十六进制 md5 哈希转换为十进制整数

我正在执行Elgamal签名方案,我需要使用消息中的十进制哈希值来计算S以生成签名。十六进制哈希的示例是:820dbb4256a4287557ade2f729d279f1如上所示,哈希值是一个32位的十六进制数。我需要将上面的字符串转换为十进制整数,以便稍后计算。stringhash=md5(message);cout没有足够大的整数来包含32字节十六进制哈希的值,所以我尝试了NTL库中的大整数,但它没有成功,因为你不能分配从strtol函数返回的长整数(而且我认为十进制哈希值比长整数范围限制长得多)到NTL::ZZ类型。这个有什么好的解决办法吗?我在VisualStudio2013中

c++ - CMake 生成的 Xcode 项目无法找到从 Xcode 构建的二进制 "Products"

我正在尝试使用CMake生成的Xcode项目。构建时一切看起来都很好,除了Xcode找不到构建的二进制文件。下面是我在成功构建产品后截取的屏幕截图。我可以在项目源目录中看到它们。但是,请注意Xcode显示红色“HelloWorld”,这意味着它找不到产品。配置:Lion10.7.2上的CMake2.8.6和Xcode4.2这是CMakeLists.txtproject(HelloWorld)add_executable(${PROJECT_NAME}HelloWorld.cpp)这是HelloWorld.cpp的源码#includeintmain(){std::cout我尝试直接从Xc